c++ vector<string> 如何 erase

来源:百度知道 编辑:UC知道 时间:2024/06/14 21:17:22
#include <vector>
#include <iostream>
using namespace std;

vector<string> name;

for (int i = 0; i < 10; i++)
{
string name2;

cin >> name2;

name.push_back(name2);
}
然后如何用迭代器erase删除某个元素?

#include <vector>
#include <iostream>
using namespace std;

vector<string> name;

for (int i = 0; i < 10; i++)
{
string name2;

cin >> name2;

name.push_back(name2);
}

//定义迭代器, 比较你想要删除的string。

//比如 想删除 123;

vector<string> name;

for (int i = 0; i < 10; i++)
{
string name2;

cin >> name2;

name.push_back(name2);
}

vector<string>::iterator nameIt;

string s("123");
name.erase( remove(name.begin(),name.end(),s) ,name.end() );
for(nameIt = name.begin(); nameIt != name.end(); ++nameIt)
{
cout << *nameIt << endl;
}